首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏RTSP/RTMP直播相关

    RTMP播放器开发填坑之道

    好多开发者提到,在目前开源播放器如此泛滥的情况下,为什么还需要做自研框架的RTMP播放器,自研和开源播放器,到底好在哪些方面?以下大概聊聊我们的一点经验,感兴趣的,可以关注 github: 1. 低延迟:大多数RTMP的播放都面向直播场景,如果延迟过大,严重影响体验,所以,低延迟是衡量一个好的RTMP播放器非常重要的指标,目前大牛直播SDK的RTMP直播播放延迟比开源播放器更优异(大牛直播SDK 支持多实例:大牛直播SDK提供的RTMP直播播放SDK支持在设备性能允许的情况下,支持多实例播放RTMP流数据,大多开源播放器对多实例支持不太友好; 除了常规的多实例外,比如大屏监控场景下,尽管我们CPU 视频view旋转:好多摄像头由于安装限制,导致图像倒置,所以一个好的RTMP播放器应该支持如视频view实时旋转(0° 90° 180° 270°)、水平反转、垂直反转,开源或第三方播放器不具备此功能; 长期运行稳定性:大牛直播SDK提供的RTMP直播播放SDK适用于长时间运行,开源播放器对长时间运行稳定性支持较差; 11.

    2.7K30发布于 2021-03-15
  • 来自专栏RTSP/RTMP直播相关

    Unity3d(U3D) WindowsAndroidIOS 播放rtmprtsp方案

    如果基于Unity3d完全重新开发一个播放器,代价大,周期长,不适合快速出产品,最好的方式就是集成现有Native平台上成熟稳定播放器. 集成Navtive播放器可行性分析: 安卓: Unity3d可以调用安卓java接口,这方面的例子很多,搜索能找到一大堆。 Windows: Unity3d调用C#就不用说了,天生支持,C#调用c dll, 可以使用P/INVOKE技术,或者把C接口封装成com组件也可以。 综上Unity3d和3个平台交互是没问题的. 这三个平台已经有成熟稳定低延时的rtmp/rtsp播放器SDK了,只要这些现有的播放SDK能吐图像数据, 然后让Unity3d绘制即可。 实现步骤: 1.Native播放器SDK支持吐RGB/YUV420/NV12等其中的一种未压缩的图像格式。

    2.1K20发布于 2019-09-17
  • 来自专栏EasyNVR

    网页可以播放RTMP视频流?支持RTMP的网页播放器

    我们知道多数监控摄像头都是支持RTMP协议的,当然公安部的摄像头是支持GB28181协议的,这个我们在本文不做过多赘述,我们来探讨一下网页播放RTMP视频流的播放器。 ? ? 网页可以播放RTMP视频流吗?当然是可以的,但是对于PC端来说,网页播放RTMP流媒体视频流将会承受更多的服务器压力,满足网页播放RTMP视频流有哪些要求,下文我们一起来看一下。 1.便捷。 本文已经为大家介绍完毕啦,结论就是网页是能够播放RTMP视频流的,如果想体验网页播放RTMP视频流的流媒体服务器或者播放器,可以继续关注本栏目。

    7.9K20发布于 2020-05-04
  • 来自专栏RTSP/RTMP直播相关

    Windows平台RTSP播放器RTMP播放器几点设计细节讨论

    我们在实现Windows平台RTSP播放器RTMP播放器的时候,需要考虑的点很多,比如多实例设计、多绘制模式兼容、软硬解码支持、快照、RTSP下TCP-UDP自动切换等,以下就其中几个方面,做个大概的探讨 is_gdi_render_ = true; playWnd.Visible = false; // 不支持D3D就让播放器吐出数据来 实时快照 实时快照功能不表,是一个好的RTSP播放器RTMP播放器必备的功能,实时快照是把解码后的yuv数据重新编码成png,所以有一定的CPU消耗,不建议过于频繁操作,具体实现如下: set_capture_image_call_back_(result, image_name); } } 后续,我们将针对RTSP和RTMP 播放器设计过程中的其他点,做更进一步的探讨,谢谢大家的关注。

    1.9K00发布于 2020-06-07
  • 来自专栏ccf19881030的博客

    视沃科技-大牛直播SDK

    (Windows/Android/iOS)二次封装,也可能是Unity3D平台下首款真正功能强大的高稳定、超低延迟的RTMP/RTSP直播播放器Unity3D RTSP/RTMP播放SDK相关(支持Windows/Android/iOS) windows/android/iOS播放器SDK(V2)Unity3D调用说明(更新于2020/03/25 RTSP直播播放器SDK 支持RTSP H.265播放及扩展录像、业内为数不多真正好用的RTSP播放器SDK,支持IE浏览器OCX控件接口调用; Unity3D RTMP/RTSP直播播放器 ); RTSP直播播放器SDK 支持RTSP H.265播放及扩展录像、业内为数不多真正好用的RTSP播放器SDK; Unity3D RTMP/RTSP直播播放器SDK 业内首家Android SDK 支持RTSP H.265播放及扩展录像、业内为数不多真正好用的RTSP播放器SDK; Unity3D RTMP/RTSP直播播放器SDK 业内首家iOS支持Unity3D的超低延迟RTMP

    5.3K30发布于 2020-10-28
  • 来自专栏RTSP/RTMP直播相关

    Unity环境下RTMP推流+RTMP播放低延迟解决方案

    RTMP推送。 相关博客: Windows平台实现Unity下窗体|摄像头|屏幕采集推送 https://cloud.tencent.com/developer/article/1833835 Android平台实现Unity3D Unity环境下RTMP|RTSP播放器 Unity环境下RTMP或RTSP直播播放我们前几年就有发布,并已应用在好多传统行业领域,比如教育或工业仿真或一些低延迟的控制场景。 Unity3D创建相应的RGB/YUV420等Shader; 3.Unity3D从各个平台获取图像数据来填充纹理即可; 需要注意的有几点: 1. 相关博客: Windows平台Unity3d下如何同时播放多路RTSP或RTMP流 https://cloud.tencent.com/developer/article/1800633 如何在Unity3d

    4.2K10发布于 2021-06-15
  • 来自专栏RTSP/RTMP直播相关

    RTMP播放器延迟最低可以做到多少?

    ​技术背景RTMP播放器的延迟可以受到多种因素的影响,包括网络状况、推流设置、播放器配置以及CDN分发等。因此,RTMP播放器的延迟并不是一个固定的数值,而是可以在一定范围内变化的。 正常情况下,网上大多看到的,针对RTMP播放器的延迟在2秒到3秒左右。这是基于RTMP协议本身的特性和一般的推流、播放设置所得出的结论。 然而,当网络状况不佳、推流设置不当或播放器配置不合理时,延迟可能会增加。具体来说,RTMP播放器的延迟可能受到以下因素的影响:网络状况:网络延迟和丢包是影响RTMP播放器延迟的重要因素。 此外,由于视频数据的处理和传输需要一定的时间,因此即使在最理想的情况下,RTMP播放器的延迟也会存在一定的最小值。综上所述,RTMP播放器的延迟可以控制在一定范围内,但具体数值会受到多种因素的影响。 所以,我们可以有底气的说,在没测试过大牛直播SDK的SmartPlayer RTMP播放器之前,你甚至不相信行业内,RTMP播放器延迟可以稳定的做到毫秒级。

    1.2K10编辑于 2024-09-08
  • 来自专栏RTSP/RTMP直播相关

    Android平台实现Unity3DRTMP推送

    Unity3D下的RTMP或RTSP播放器一样,好多开发者苦于在Unity环境下,如何高效率低延迟的把数据采集并编码实时推送到流媒体服务器,实现Unity场景下的低延迟推拉流方案。 Android平台Unity3D的RTSP或RTMP播放器,可以参考 https://cloud.tencent.com/developer/article/1800633 本文以Android平台为例 RTMP推送。 下图系Android平台Unity环境下采集屏幕,编码推送到RTMP服务器,然后Windows平台播放器拉取RTMP流播放,为了方便看到延迟效果,特地在Android端的Unity窗口显示了当前时间,可以看到 ,整体延迟在毫秒级: Unity3d采集.jpg 数据采集推送 unity数据采集相对简单,可以很轻松的拿到RGB24的数据: texture_ = new Texture2D(video_width_

    1.2K30发布于 2021-06-08
  • 来自专栏RTSP/RTMP直播相关

    RTSP播放器RTMP播放器常用Event事件回调设计

    很多开发者在开发RTSP或RTMP播放器的时候,不晓得哪些event回调事件是有意义的,针对此,我们以大牛直播SDK(github)的Android平台RTSP/RTMP直播播放端为例,简单介绍下常用的 流实时下载回调:显示播放rtsp或rtmp流时,实时流量,注意,这块最好是可设置回调时间间隔,防止不必要的资源消耗; 8. RTSP错误状态:如401鉴权不通过。 会返回缓冲百分比)EVENT_DANIULIVE_ERC_PLAYER_STOP_BUFFERING停止缓冲数据EVENT_DANIULIVE_ERC_PLAYER_DOWNLOAD_SPEED返回当前 RTSP/RTMP

    1.3K22发布于 2020-10-15
  • 来自专栏RTSP/RTMP直播相关

    Android平台RTSP|RTMP播放器(SmartPlayer)集成必读

    从高效率的角度,磨刀不误砍柴工,在模块集成之前,还是希望开发者能了解播放器集成的一些前置条件,少走弯路,尽快完成RTSP、RTMP低延迟播放能力构建。 本文不关注接口集成调用细节,主要介绍下,播放器集成的一些前置条件和注意事项。 直播播放器Demo工程源码SmartPlayerV2\app\src\main\jniLibssmartavengine.jar和libSmartPlayer.soSmartPlayerV2\app\src \main\java\com\daniulive\smartplayer\SmartPlayerJniV2.java播放器头文件SmartPlayerV2\app\src\main\java\com\daniulive 结束时必须调用close接口释放资源功能支持音频:AAC/Speex(RTMP)/PCMA/PCMU;视频:H.264、H.265;播放协议:RTSP|RTMP;支持纯音频、纯视频、音视频播放;支持多实例播放

    1.3K10编辑于 2024-09-05
  • 来自专栏RTSP/RTMP直播相关

    Windows平台RTMP播放器RTSP播放器播放窗口添加OSD文字叠加

    可以在播放画面添加OSD台标,以实现字符叠加效果,大多开发者可很轻松的实现以上效果,针对此,本文以大牛直播SDK (Github)的Windows平台demo为例,简单介绍下具体实现: Windows平台RTMP 播放器、RTSP播放器C++ demo Windows平台C++的demo,以录像过程为例,动态在左上角显示个闪动的图标+当前时间,具体效果如下: CPP添加osd.png 核心代码 std::shared_ptr data_.swap(buffer); } bitmap.UnlockBits(&locked_bitmapData); } return logo_image; } Windows平台RTMP 播放器、RTSP播放器C# demo Windows平台C#的demo,添加了“设置台标”选择框,在player窗口左上角显示“叠加字符展示”,具体内容、坐标可自定义,具体效果如下: 添加osd.png

    3K50发布于 2021-03-01
  • 来自专栏RTSP/RTMP直播相关

    Android平台如何实现Unity3DRTMP推送

    Unity3D下的RTMP或RTSP播放器一样,好多开发者苦于在Unity环境下,如何高效率低延迟的把数据采集并编码实时推送到流媒体服务器,实现Unity场景下的低延迟推拉流方案。 本文以Android平台为例,介绍下Unity环境下的Android平台RTMP推流,数据采集在Unity完成,数据编码推送,调用大牛直播SDKAndroid平台RTMP直播推送SDK原生库对外二次封装的接口 ,高效率的实现RTMP推送。 下图系Android平台Unity环境下采集屏幕,编码推送到RTMP服务器,然后Windows平台播放器拉取RTMP流播放,为了方便看到延迟效果,特地在Android端的Unity窗口显示了当前时间,可以看到 ,整体延迟在毫秒级: Unity3d采集.jpg 数据采集推送 unity数据采集相对简单,可以很轻松的拿到RGB24的数据: texture_ = new Texture2D(video_width_

    1.5K20发布于 2021-06-08
  • 来自专栏RTSP/RTMP直播相关

    QT下实现低延迟RTSP|RTMP播放器

    好多开发者在QT环境下实现RTMP或RTSP播放时,首先考虑到的是集成VLC,集成后,却发现VLC在延迟、断网重连、稳定性等各个方面不尽人意,无法满足上线环境需求。 本文以调用大牛直播SDK(官方)的Windows平台播放端SDK为例,介绍下如何在QT下实现低延迟的RTMP|RTSP播放器,废话不多说,先上图: QTPlayer.png 大牛直播SDK有MFC的demo play->OnWindowSize(widgets.at(i)->width(), widgets.at(i)->height()); } } } 以上是QT环境下集成个低延迟的RTMP

    2.2K80发布于 2021-04-30
  • 来自专栏RTSP/RTMP直播相关

    RTMP直播播放器为什么要做秒开?

    播放器秒开意义2015年我们做了RTMP直播播放器没多久,就加了快速播放接口,今天就从播放器用户体验的维度,谈谈为什么要做这个:一、提升用户体验减少等待焦虑 在当今快节奏的生活中,用户的耐心有限。 提高广告投放效果 对于依赖广告收入的视频平台来说,播放器秒开可以提高广告的投放效果。如果播放器打开缓慢,用户可能在广告加载之前就关闭了播放器,导致广告无法展示。 优化推流和拉流协议:采用高效的推流协议,如 RTMP(Real Time Messaging Protocol)、HLS(HTTP Live Streaming)、DASH(Dynamic Adaptive 直播播放器秒开接口设计本文以大牛直播SDK的安卓平台接口设计为例,介绍下快速启动接口的设计,RTMP直播播放器做秒开的前提是,服务器可以缓存GOP数据,播放端拉取到数据后,快速渲染,让用户看到视频画面, successful */public native int SmartPlayerSetFastStartup(long handle, int is_fast_startup);快速启动接口调用的话,RTMP

    56110编辑于 2024-11-25
  • 来自专栏RTSP/RTMP直播相关

    iOS平台RTSP|RTMP直播播放器技术接入说明

    ​ 技术背景大牛直播SDK自2015年发布RTSP、RTMP直播播放模块,迭代从未停止,SmartPlayer功能强大、性能强劲、高稳定、超低延迟、超低资源占用。 无需赘述,全自研内核,行业内一致认可的跨平台RTSP、RTMP直播播放器。本文以iOS平台为例,介绍下如何集成RTSP、RTMP播放模块。 |RTSP直播播放,我们设计实现的功能如下:音频:AAC/PCMA/PCMU/SPEEX(RTMP);视频:H.264;播放协议:RTMP或RTSP;支持纯音频、纯视频、音视频播放;支持多实例播放;支持网络状态 扩展H.265播放(Enhanced RTMP);支持扩展录像功能;支持Unity3D接口;支持H.264扩展SEI接收模块;支持iOS 9.0及以上版本。 由于设备和系统比较单一,优先考虑硬解码,除了基础播放外,我们还实现了实时快照、实时录像、实时回调YUV数据、实时音量调节等,实际体验下来,iOS平台RTMP和RTSP,可以轻松毫秒级。​

    95710编辑于 2024-09-19
  • 来自专栏RTSP/RTMP直播相关

    Unity3D平台实现全景实时RTMP|RTSP流渲染

    好多开发者的使用场景,需要在Windows特别是Android平台实现Unity3D的全景实时视频渲染,本文以Windows平台为例,简单介绍下具体实现: 如果是RTSP或RTMP流数据,实际上难点,主要在于拉取 RTSP或RTMP流,解析解码,然后把解码后的YUV数据,回调到Unity层,Unity创建个Sphere,创建个材质球(Material),并把材质球挂在到Sphere即可。 本文以Windows推送端采集全景视频,编码推送到RTMP服务器,播放端拉流回调数据并在Unity渲染为例(左侧是Unity播放端,滑动鼠标,可以实现全景内容切换): unity全景.jpg 废话不多说 } } else { PreMouseLPos = new Vector3(0.0f, 0.0f, 0.0f); } } 以上是Unity3D 下实现RTMP或RTSP全景视频播放的大概流程,感兴趣的开发者可自行尝试。

    1.5K50编辑于 2022-04-05
  • 来自专栏RTSP/RTMP直播相关

    从 RTSPRTMP播放器到低空经济具身智能:如何撑起毫秒级反馈的实时视频系统

    这也是为什么,超低延迟的 RTSP/RTMP 播放器不再是“播放器里的一个配置项”,而是具身智能和低空经济里那条“看不见但最关键”的基础设施。 所以,一个真正可用的低延迟 RTSP/RTMP 播放器,不再是“选项”,而是整个链路的关键一环。三、“超低延迟播放器”到底难在哪里? 大牛直播SDK 的 RTSP/RTMP 播放器模块,本来就按“四端统一 + 国产化适配”的套路走: Windows / Linux / Android / iOS 四端 SDK; 可在 Unity3D 在这四层里,超低延迟 RTSP/RTMP 播放器主要影响两块:1. 控制台/监控端 Windows/Linux 上位机:集成大牛直播SDK 的 RTSP/RTMP 播放器; Android 控制平板、iOS 终端:嵌入移动端 SDK; Unity3D/VR 头显:

    30810编辑于 2025-11-24
  • 来自专栏RTSP/RTMP直播相关

    Android平台RTSP|RTMP直播播放器技术接入说明

    初始化接口 SmartPlayerOpen:初始化播放器,设置上下文信息,返回播放实例句柄。 SetSmartPlayerEventCallbackV2:设置事件回调接口,用于接收播放器的状态信息。 2. SmartPlayerSetUrl:设置需要播放或录像的 RTMP/RTSP URL。 SmartPlayerStartPlay:开始播放 RTSP/RTMP 流。 RTMP 增强:支持 Enhanced RTMP。 录像功能:支持扩展录像功能。 系统兼容:支持 Android 5.1 及以上版本。 六、接口调用详解1. 资源释放在 onDestroy() 方法中,停止播放、录像,并释放播放器实例句柄:@Overrideprotected void onDestroy() { Log.i(TAG, "Run into

    1K20编辑于 2025-03-02
  • 来自专栏RTSP/RTMP直播相关

    Windows平台RTMP|RTSP播放器实现画面全屏功能

    我们在Windows平台实现RTSP或者RTMP播放的时候,有个功能是绕不开的,那就是播放窗口全屏。 本文就以大牛直播SDK(官方)的Windows播放器为例,大概讲下大概实现: 全屏播放需要考虑的点不多: 第一:视频播放后,全屏的意义; 第二:全屏后,是否等比例显示,我们的设计原则是,之前等比例显示的

    1.1K20发布于 2021-05-13
  • 来自专栏音视频进阶之旅

    FFmpeg视频播放器开发-FFmpeg拉rtmp流(七)

    在菜单栏输入rtmp流地址后,关闭窗口,在closeEvent方法中发送信号,主线程接收到该信号后,调用网络流线程解码,同时视频显示窗口刷新解码后的img, 这样网络流就可以播放了。 ui.lineEdit_IP->text();CommonUtils::writeIni(m_iniPath, m_iniKey, address);emit(PushStream(address));}菜单栏这是湖南卫视的rtmprtmp://58.200.131.2:1935/livetv/hunantv主界面接收PushStream信号connect(&m_NetDlg, SIGNAL(PushStream(QString setWindowTitle(address);NetStreamThread::getInstance()->startPlay(address);}通过调用NetStreamThread线程类解码rtmp

    4.3K20编辑于 2022-09-24
领券